public class Test2 {
    public static void main(String[] args) {
        String strA = "abcde";
        String strB = "deabc";
        boolean result = cheak(strA, strB);
        System.out.println(result);

    }

    //调用方法进行比较
    public static boolean cheak(String strA, String strB) {

        for (int i = 0; i < strA.length(); i++) {
            strA = rotate(strA);
            if (strA.equals(strB)) {
                return true;
            }
        }
        return false;
    }

    public static String rotate(String str) {
        //套路:
        //如果我们看到要修改字符串的内容
        //可以有两个办法:
        //1.用substring进行截取,把左边的字符截取出来拼接到右侧去
        //2.可以把字符串先变成一个字符数组,然后调整字符数组里面数据,最后再把字符数组变成字符串。
        /*
        //获取最左边的字符
        char first = str.charAt(0);
        //获取剩余的字符
        String end = str.substring(1);

        return end+first;
        */
        //"ABC"['A','B','C'] ['B', C','A']  new String(字符数组);
        char[] arr = str.toCharArray();//索引
        //拿到0索引上的字符
        char first = arr[0];
        //把剩余的字符往前面挪一个位置
        for (int i = 1; i < arr.length; i++) {
            arr[i - 1] = arr[i];
        }
        //把原来的0索引字符放到最后一个索引
        arr[arr.length - 1] = first;
        //利用字符数组创建一个字符串对象
        String result = new String(arr);
        return result;

    }
}
